#ifdef U8g2
#include <Arduino.h>
#include <U8g2lib.h>
#ifdef U8X8_HAVE_HW_SPI
#include <SPI.h>
#endif
#ifdef U8X8_HAVE_HW_I2C
#include <Wire.h>
#endif
//U8G2_SSD1306_128X64_NONAME_F_4W_SW_SPI u8g2(U8G2_R0, /* clock=*/ D6, /* data=*/ D5, /* cs=*/ D4, /* dc=*/ D8, /* reset=*/ D0);
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);
void initu8g2code()
{
  u8g2.begin();          //初始化OLED
  u8g2.enableUTF8Print();
  /// u8g2.clearBuffer();
  u8g2.clearDisplay();
  // u8g2.setPowerSave(0);
  u8g2.clearBuffer();          // clear the internal memory
  u8g2.setFont(u8g2_font_ncenB08_tr); // choose a suitable font
  u8g2.drawStr(0, 10, "Hello World!"); // write something to the internal memory
  u8g2.sendBuffer();          // transfer internal memory to the display
 // Blinker.delay(1000);
}
void drawLogo(void)
{
  u8g2.setFontMode(1);  // Transparent
#ifdef MINI_LOGO

  u8g2.setFontDirection(0);
  u8g2.setFont(u8g2_font_inb16_mf);
  u8g2.drawStr(0, 22, "U");

  u8g2.setFontDirection(1);
  u8g2.setFont(u8g2_font_inb19_mn);
  u8g2.drawStr(14, 8, "8");

  u8g2.setFontDirection(0);
  u8g2.setFont(u8g2_font_inb16_mf);
  u8g2.drawStr(36, 22, "g");
  u8g2.drawStr(48, 22, "\xb2");
#endif
  u8g2.drawHLine(0, 0, 128);
  u8g2.drawHLine(0, 63, 128);
  u8g2.drawVLine(0, 0, 64);
  u8g2.drawVLine(127, 0, 64);

}
void drawpsrawdata(int ch0, int ch1, uint8_t current_stage)
{
  u8g2.clearBuffer();
  u8g2.setFontDirection(0);
  u8g2.setFont(u8g2_font_inb16_mf);
  u8g2.setCursor( 3, 20);
  u8g2.print("IR=");
  u8g2.setCursor( 3, 40);
  u8g2.print("PS=");
  u8g2.setCursor( 3, 60);
  u8g2.print("ST=");

  u8g2.setCursor( 60, 20);
  u8g2.print(ch0);
  u8g2.setCursor( 60, 40);
  u8g2.print(ch1);
  u8g2.setCursor( 60, 60);
  u8g2.print(current_stage);
  u8g2.sendBuffer();
}
void drawpsthd(int ch0, int ch1, int current_stage)
{
  u8g2.clearBuffer();
  u8g2.setFontDirection(0);
  u8g2.setFont(u8g2_font_inb16_mf);
  u8g2.setCursor( 3, 20);
  u8g2.print("L=");
  u8g2.setCursor( 3, 40);
  u8g2.print("H=");
  u8g2.setCursor( 3, 60);
  u8g2.print("M=");

  u8g2.setCursor( 40, 20);
  u8g2.print(ch0);
  u8g2.setCursor( 40, 40);
  u8g2.print(ch1);
  u8g2.setCursor( 40, 60);
  u8g2.print(current_stage);
  u8g2.sendBuffer();
}
void drawalsrawdata(int ch0, int ch1, uint8_t current_stage, int lux)
{
  u8g2.clearBuffer();
  u8g2.setFontDirection(0);
  u8g2.setFont(u8g2_font_inb16_mf);
  u8g2.setCursor( 3, 20);
  u8g2.print("ch0=");
  u8g2.setCursor( 3, 40);
  u8g2.print("ch1=");
  u8g2.setCursor( 3, 60);
  u8g2.print("AG=");

  u8g2.setCursor( 60, 20);
  u8g2.print(ch0);
  u8g2.setCursor( 60, 40);
  u8g2.print(ch1);
  u8g2.setCursor( 40, 60);
  u8g2.print(current_stage);
  u8g2.setCursor( 60, 60);
  u8g2.print(lux);
  u8g2.sendBuffer();
}
#endif
